home *** CD-ROM | disk | FTP | other *** search
/ Holt Researcher: American History / Holt Researcher: American History.iso / pc / modules / dbtable.dxr / 00004_DB Table Var.ls < prev    next >
Encoding:
Text File  |  2000-01-18  |  7.9 KB  |  292 lines

  1. property pTableObj, pTableCount, pSpriteList, pControlObjList, pTracking, pPointingCursor, pNArrowObj, pSArrowObj, pEArrowObj, pWArrowObj, pVThumbObj, pHThumbObj, pVBedObj, pHBedObj, pScrollNeedsList, pStartList, pCurrList, pX, pY, pSelRect, pRolloverTextObj, pTableMaxRect, pSpriteLeftList, pBorderRectList, pLibraryName
  2. global gTableClipboard
  3.  
  4. on new me
  5.   pControlObjList = [:]
  6.   pTracking = 0
  7.   pPointingCursor = [member("point hand"), member("point hand mask")]
  8.   return me
  9. end
  10.  
  11. on InitControlProps me
  12.   cbs = getaProp(pSpriteList, #closeBox)
  13.   mmbs = getaProp(pSpriteList, #MaxMinBox)
  14.   CopyBS = getaProp(pSpriteList, #CopyButton)
  15.   PrintBS = getaProp(pSpriteList, #PrintButton)
  16.   SaveBS = getaProp(pSpriteList, #SaveButton)
  17.   addProp(pControlObjList, cbs, new(script("close box"), "close box", "global", cbs, the loc of sprite cbs))
  18.   addProp(pControlObjList, mmbs, new(script("max min box"), "min max", "global", mmbs, the loc of sprite mmbs))
  19.   addProp(pControlObjList, CopyBS, new(script("copy icon"), "copy", "internal", CopyBS, the loc of sprite CopyBS))
  20.   addProp(pControlObjList, PrintBS, new(script("print icon"), "print", "internal", PrintBS, the loc of sprite PrintBS))
  21.   addProp(pControlObjList, SaveBS, new(script("save icon"), "save", "internal", SaveBS, the loc of sprite SaveBS))
  22.   VBedSp = getaProp(pSpriteList, #VBed)
  23.   VThumbSp = getaProp(pSpriteList, #VThumb)
  24.   NArrowSp = getaProp(pSpriteList, #NorthArrow)
  25.   SArrowSp = getaProp(pSpriteList, #SArrow)
  26.   pVBedObj = getaProp(pControlObjList, VBedSp)
  27.   pVThumbObj = getaProp(pControlObjList, VThumbSp)
  28.   pNArrowObj = getaProp(pControlObjList, NArrowSp)
  29.   pSArrowObj = getaProp(pControlObjList, SArrowSp)
  30.   HBedSp = getaProp(pSpriteList, #HBed)
  31.   EArrowSp = getaProp(pSpriteList, #EArrow)
  32.   WArrowSp = getaProp(pSpriteList, #WArrow)
  33.   HThumbSp = getaProp(pSpriteList, #HThumb)
  34.   pHBedObj = getaProp(pControlObjList, HBedSp)
  35.   pEArrowObj = getaProp(pControlObjList, EArrowSp)
  36.   pWArrowObj = getaProp(pControlObjList, WArrowSp)
  37.   pHThumbObj = getaProp(pControlObjList, HThumbSp)
  38.   repeat with rc in pControlObjList
  39.     Inscope(rc)
  40.   end repeat
  41.   disable(getaProp(pControlObjList, CopyBS))
  42.   EvalDisableScroll(me)
  43.   repeat with rc in [cbs, mmbs, PrintBS, SaveBS]
  44.     set the cursor of sprite rc to GetPointingCursor(me)
  45.   end repeat
  46. end
  47.  
  48. on EvalDisableScroll me
  49.   pScrollNeedsList = GetScrollNeeds(pTableObj)
  50.   repeat with rc in [pNArrowObj, pSArrowObj, pVThumbObj, pVBedObj]
  51.     if getaProp(pScrollNeedsList, #v) then
  52.       Inscope(rc)
  53.       next repeat
  54.     end if
  55.     disable(rc)
  56.   end repeat
  57.   repeat with rc in [pEArrowObj, pWArrowObj, pHThumbObj, pHBedObj]
  58.     if getaProp(pScrollNeedsList, #h) then
  59.       Inscope(rc)
  60.       next repeat
  61.     end if
  62.     disable(rc)
  63.   end repeat
  64. end
  65.  
  66. on ScrollToStart me
  67.   ScrollToStart(pTableObj)
  68.   return me
  69. end
  70.  
  71. on setSelectionRect me, StartCellRect, CurrCellRect
  72.   l = min(StartCellRect.left, CurrCellRect.left)
  73.   t = min(StartCellRect.top, CurrCellRect.top)
  74.   R = max(StartCellRect.right, CurrCellRect.right)
  75.   b = max(StartCellRect.bottom, CurrCellRect.bottom)
  76.   pSelRect = rect(l, t, R, b)
  77.   return me
  78. end
  79.  
  80. on TableCopy me
  81.   if checkIfSelected(pTableObj) then
  82.     gTableClipboard = getSelectedData(pTableObj)
  83.   end if
  84.   return me
  85. end
  86.  
  87. on print me
  88.   global gEnvironObj
  89.   if not isMemoryAvailable("print the document", 1200, 500) then
  90.     exit
  91.   end if
  92.   LibraryName = GetLibraryName(me)
  93.   TitleMember = the number of member "print title f"
  94.   TableOrientation = member("orientation", "tabled.cst").text
  95.   TableMemberNum = the number of member "orientation" of castLib "tabled.cst" + 1
  96.   unLoad()
  97.   doc = new(xtra("PrintOMatic"))
  98.   if not objectp(doc) then
  99.     alert("A problem was encountered while initializing the printer.")
  100.     exit
  101.   end if
  102.   if TableOrientation = "portrait" then
  103.     nothing()
  104.   else
  105.     setLandscapeMode(doc, 1)
  106.   end if
  107.   pageW = getPageWidth(doc)
  108.   pageH = getPageHeight(doc)
  109.   set the textSize of member TitleMember to 14
  110.   member(TitleMember).rect = rect(0, 0, pageW, 0)
  111.   TitleH = member(TitleMember).height
  112.   pgNumSym = numToChar(166)
  113.   setPageNumSymbol(doc, pgNumSym)
  114.   setTextJust(doc, "centered")
  115.   if member(TableMemberNum + 1).type = #bitmap then
  116.     drawText(doc, "page" && pgNumSym, point((pageW / 2) - 18, pageH + 18))
  117.   end if
  118.   newPage(doc)
  119.   setTextJust(doc, "centered")
  120.   CurrBottom = TitleH + 18
  121.   newFrame(doc, rect(0, 0, pageW, CurrBottom), 0)
  122.   append(doc, member(TitleMember), 1)
  123.   CurrTop = CurrBottom
  124.   CurrBottom = pageH
  125.   newFrame(doc, rect(0, CurrTop, pageW, CurrBottom), 0)
  126.   repeat while member(TableMemberNum, "tabled.cst").type = #bitmap
  127.     append(doc, member(TableMemberNum), 1)
  128.     TableMemberNum = TableMemberNum + 1
  129.   end repeat
  130.   setDocumentName(doc, "American History")
  131.   if doJobSetup(doc) then
  132.     print(doc)
  133.   end if
  134.   doc = 0
  135.   return me
  136. end
  137.  
  138. on save me
  139.   fileName = the text of field "media f" of castLib 1
  140.   fileName = MakePlatformFileName(fileName)
  141.   fileName = fileName & GetTextExtension()
  142.   pathAndName = GetSavePathandName(fileName)
  143.   if pathAndName <> EMPTY then
  144.     saveTextFile(pathAndName, the text of field 30 of castLib "tabled.cst")
  145.   end if
  146.   return me
  147. end
  148.  
  149. on InitRollOverText me
  150.   if not objectp(pRolloverTextObj) then
  151.     rolloverList = []
  152.     setAt(rolloverList, getaProp(pSpriteList, #closeBox), 16)
  153.     setAt(rolloverList, getaProp(pSpriteList, #CopyButton), 13)
  154.     setAt(rolloverList, getaProp(pSpriteList, #PrintButton), 11)
  155.     setAt(rolloverList, getaProp(pSpriteList, #SaveButton), 10)
  156.     setAt(rolloverList, getaProp(pSpriteList, #MaxMinBox), 18)
  157.     pRolloverTextObj = new(script("rollover text"), rolloverList)
  158.   end if
  159. end
  160.  
  161. on doRolloverText me
  162.   doRolloverText(pRolloverTextObj)
  163. end
  164.  
  165. on SetTableMaxRectProp me, list
  166.   pTableMaxRect = list
  167. end
  168.  
  169. on GetTableMaxRectProp me
  170.   return pTableMaxRect
  171. end
  172.  
  173. on EvalCellRect xRect, Side, SpriteSide
  174.   if voidp(xRect) then
  175.     return 0
  176.   end if
  177.   if getAt(xRect, Side) < SpriteSide then
  178.     return 0
  179.   else
  180.     return 1
  181.   end if
  182. end
  183.  
  184. on GetAllTablesRect
  185.   Table1Rect = GetCurrentRect(getAt(pTableObj, 1))
  186.   TableLastRect = GetCurrentRect(getAt(pTableObj, count(pTableObj)))
  187.   NWpoint = point(getAt(Table1Rect, 1), getAt(Table1Rect, 2))
  188.   SEpoint = point(getAt(TableLastRect, 3), getAt(TableLastRect, 4))
  189.   return rect(NWpoint, SEpoint)
  190. end
  191.  
  192. on GetTargList direction
  193.   xList = []
  194.   repeat with rc in pTableObj
  195.     if direction = #v then
  196.       TestSprite = GetSprite(rc)
  197.       if member(GetMember(rc)).height > the height of sprite TestSprite then
  198.         append(xList, TestSprite)
  199.       end if
  200.       next repeat
  201.     end if
  202.     TestSprite = GetSprite(rc)
  203.     if member(GetMember(rc)).width > the width of sprite TestSprite then
  204.       append(xList, TestSprite)
  205.     end if
  206.   end repeat
  207.   return xList
  208. end
  209.  
  210. on SetSpriteLeftList me, xVar
  211.   pSpriteLeftList = xVar
  212. end
  213.  
  214. on SetBorderRect me, list
  215.   pBorderRectList = list
  216. end
  217.  
  218. on GetBorderRect me, size
  219.   return getAt(pBorderRectList, size)
  220. end
  221.  
  222. on SetTableObj me, Var
  223.   pTableObj = Var
  224.   setSuperTable(pTableObj)
  225. end
  226.  
  227. on GetTableObj me
  228.   return pTableObj
  229. end
  230.  
  231. on SetControlList me, xList
  232.   pControlObjList = xList
  233. end
  234.  
  235. on GetControlList me
  236.   return pControlObjList
  237. end
  238.  
  239. on SetSpriteList me, list
  240.   pSpriteList = list
  241. end
  242.  
  243. on GetSpriteList me
  244.   return pSpriteList
  245. end
  246.  
  247. on GetPointingCursor me
  248.   return pPointingCursor
  249. end
  250.  
  251. on SetLibraryName me, xName
  252.   pLibraryName = xName
  253. end
  254.  
  255. on GetLibraryName me
  256.   return pLibraryName
  257. end
  258.  
  259. on condemn me
  260.   pControlObjList = CondemnList(me, pControlObjList)
  261.   condemn(pTableObj)
  262.   pTableObj = 0
  263.   condemn(pNArrowObj)
  264.   pNArrowObj = 0
  265.   condemn(pSArrowObj)
  266.   pSArrowObj = 0
  267.   condemn(pEArrowObj)
  268.   pEArrowObj = 0
  269.   condemn(pWArrowObj)
  270.   pWArrowObj = 0
  271.   condemn(pVThumbObj)
  272.   pVThumbObj = 0
  273.   condemn(pHThumbObj)
  274.   pHThumbObj = 0
  275.   condemn(pVBedObj)
  276.   pVBedObj = 0
  277.   condemn(pHBedObj)
  278.   pHBedObj = 0
  279.   pRolloverTextObj = 0
  280.   return me
  281. end
  282.  
  283. on CondemnList me, xList
  284.   MaxCount = count(xList)
  285.   repeat with rc = 1 to MaxCount
  286.     xObj = getAt(xList, rc)
  287.     condemn(xObj)
  288.     setAt(xList, rc, 0)
  289.   end repeat
  290.   return 0
  291. end
  292.